xcsv.o gcdb.o tiger.o internal_styles.o easygps.o quovadis.o \
gpilots.o saroute.o navicache.o psitrex.o geoniche.o delgpl.o \
ozi.o nmea.o text.o html.o palmdoc.o netstumbler.o hsa_ndv.o \
- igc.o brauniger_iq.o shape.o hiketech.o glogbook.o coastexp.o
+ igc.o brauniger_iq.o shape.o hiketech.o glogbook.o coastexp.o \
+ vcf.o
FILTERS=position.o duplicate.o arcdist.o polygon.o smplrout.o reverse_route.o sort.o stackfilter.o
(echo -n "internal_styles.c: mkstyle.sh " ; echo style/*.style ; /bin/echo -e '\t./mkstyle.sh > internal_styles.c || (rm -f internal_styles.c ; exit 1)' ) >> /tmp/dep
echo Edit Makefile and bring in /tmp/dep
-VERSIONU=1_2_5_beta12222004
-VERSIOND=1.2.5_beta12222004
+VERSIONU=1_2_5_beta01032005
+VERSIOND=1.2.5_beta01032005
#VERSIONU=1_2_4
#VERSIOND=1.2.4
ff_vecs_t brauniger_iq_vecs = {
ff_type_serial,
+ FF_CAP_RW_ALL,
rd_init,
NULL,
rd_deinit,
ff_vecs_t cetus_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t coastexp_vecs = {
ff_type_file,
+ { ff_cap_read|ff_cap_write, ff_cap_none, ff_cap_read|ff_cap_write },
ce_rd_init,
ce_wr_init,
ce_rd_deinit,
ff_vecs_t copilot_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_type_serial, /* format describes a serial protoco (GUI can display port names) */
} ff_type;
+typedef enum {
+ ff_cap_rw_wpt,
+ ff_cap_rw_trk,
+ ff_cap_rw_rte
+} ff_cap_array;
+
+typedef enum {
+ ff_cap_none,
+ ff_cap_read = 1,
+ ff_cap_write = 2
+} ff_cap;
+#define FF_CAP_RW_ALL \
+ { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write }
+
+#define FF_CAP_RW_WPT \
+ { ff_cap_read | ff_cap_write, ff_cap_none, ff_cap_none}
+
/*
* Describe the file format to the caller.
*/
typedef struct ff_vecs {
ff_type type;
+ ff_cap cap[3];
ff_init rd_init;
ff_init wr_init;
ff_deinit rd_deinit;
ff_vecs_t gpl_vecs = {
ff_type_file,
+ { ff_cap_none, ff_cap_read | ff_cap_write, ff_cap_none },
gpl_rd_init,
gpl_wr_init,
gpl_rd_deinit,
ff_vecs_t easygps_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t garmin_vecs = {
ff_type_serial,
+ FF_CAP_RW_ALL,
rw_init,
rw_init,
rw_deinit,
ff_vecs_t gcdb_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t geo_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
geo_rd_init,
geo_wr_init,
geo_rd_deinit,
ff_vecs_t geoniche_vecs =
{
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t glogbook_vecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
glogbook_rd_init,
glogbook_wr_init,
glogbook_rd_deinit,
ff_vecs_t gpilots_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t gpspilot_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t gpsutil_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t gpx_vecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
gpx_rd_init,
gpx_wr_init,
gpx_rd_deinit,
ff_vecs_t hiketech_vecs = {
ff_type_file,
+ { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_none },
hiketech_rd_init,
hiketech_wr_init,
hiketech_rd_deinit,
ff_vecs_t holux_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t HsaEndeavourNavigator_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
hsa_ndv_rd_init,
hsa_ndv_wr_init,
hsa_ndv_rd_deinit,
ff_vecs_t html_vecs = {
ff_type_file,
+ { ff_cap_write, ff_cap_none, ff_cap_none },
NULL,
wr_init,
NULL,
ff_vecs_t igc_vecs = {
ff_type_file,
+ { ff_cap_none , ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write },
rd_init,
wr_init,
rd_deinit,
ff_vecs_t magnav_vec = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
*/
ff_vecs_t mag_svecs = {
ff_type_serial,
+ FF_CAP_RW_ALL,
mag_rd_init,
mag_wr_init,
mag_deinit,
ff_vecs_t mag_fvecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
mag_rd_init,
mag_wr_init,
mag_deinit,
ff_vecs_t mapopolis_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t mapsend_vecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
mapsend_rd_init,
mapsend_wr_init,
mapsend_rd_deinit,
ff_vecs_t mps_vecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
mps_rd_init,
mps_wr_init,
mps_rd_deinit,
ff_vecs_t navicache_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
nav_rd_init,
nav_wr_init,
nav_rd_deinit,
ff_vecs_t netstumbler_vecs = {
ff_type_file,
+ { ff_cap_write, ff_cap_none, ff_cap_none },
rd_init,
NULL,
rd_deinit,
ff_vecs_t nmea_vecs = {
ff_type_file,
+ { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_none},
nmea_rd_init,
nmea_wr_init,
nmea_rd_deinit,
ff_vecs_t ozi_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t palmdoc_vecs = {
ff_type_file,
+ { ff_cap_write, ff_cap_none, ff_cap_none},
NULL,
wr_init,
NULL,
ff_vecs_t pcx_vecs = {
ff_type_file,
+ { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_none },
rd_init,
wr_init,
rd_deinit,
ff_vecs_t psit_vecs = {
ff_type_file,
+ FF_CAP_RW_ALL,
psit_rd_init,
psit_wr_init,
psit_rd_deinit,
ff_vecs_t psp_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
psp_rd_init,
psp_wr_init,
psp_rd_deinit,
ff_vecs_t quovadis_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t saroute_vecs = {
ff_type_file,
+ { ff_cap_none, ff_cap_read, ff_cap_none},
rd_init,
wr_init,
rd_deinit,
ff_vecs_t shape_vecs = {
ff_type_internal,
+ FF_CAP_RW_ALL,
my_rd_init,
my_wr_init,
my_rd_deinit,
ff_vecs_t text_vecs = {
ff_type_file,
+ { ff_cap_write, ff_cap_none, ff_cap_none},
NULL,
wr_init,
NULL,
ff_vecs_t tiger_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t tmpro_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
rd_init,
wr_init,
rd_deinit,
ff_vecs_t tpg_vecs = {
ff_type_file,
+ FF_CAP_RW_WPT,
tpg_rd_init,
tpg_wr_init,
tpg_rd_deinit,
ff_vecs_t vcf_vecs = {
ff_type_file,
+ { ff_cap_write, ff_cap_none, ff_cap_none},
NULL,
wr_init,
NULL,
ff_vecs_t xcsv_vecs = {
ff_type_internal,
+ FF_CAP_RW_WPT, /* This is a bit of a lie for now... */
xcsv_rd_init,
xcsv_wr_init,
xcsv_rd_deinit,